home *** CD-ROM | disk | FTP | other *** search
/ Zoom 2 / Zoom - Release 2 (1996)(Active Software)[!].iso / games / doomclones / gloomdeluxe / gloomcudemo / gloomc2p < prev    next >
Text File  |  1996-01-04  |  5KB  |  130 lines

  1.  
  2.         Alternative C2P Routines v1.0 for Gloom Deluxe       4 Jan 1996
  3.         ----------------------------------------------
  4.  
  5. This archive is intended to be used with the wonderful Gloom Deluxe
  6. Demo by Mark Sibly of Black Magic Software.  Hopefully it also works
  7. with the full commercial version of Gloom Deluxe.
  8.  
  9. The files in this archive may be distributed anywhere provided they are
  10. unmodified and are not sold for profit.
  11.  
  12. Ownership and copyright of all files remains with the author:
  13.  
  14.         Peter McGavin, 86 Totara Crescent, Lower Hutt, New Zealand.
  15.         e-mail: p.mcgavin@irl.cri.nz
  16.  
  17.  
  18. A feature of Gloom Deluxe Demo is that users can write their own
  19. chunky to planar (c2p) routines for Amiga native displays.  It is
  20. possible to make Gloom Deluxe Demo faster on some machines.
  21.  
  22. This archive contains some c2p routines that I wrote.  They supplement
  23. the c2p/blackmagic_1 routines supplied with Gloom Deluxe Demo.
  24.  
  25. Note: there is little point in using these routines if you have a
  26. 3rd-party graphics card and cybergraphics.
  27.  
  28. c2p/020_1 is optimised for 68020.  The routines for a pixel width of 1
  29. are about the same speed as blackmagic_1.  However the routines for
  30. double-width pixels are twice as fast when 32-bit chipmem is
  31. available.
  32.  
  33. c2p/040_1 is optimised for 68040 and 32-bit chipmem, e.g, A4000/040 or
  34. A3000+accelerator.  It is up to twice as fast as c2p/blackmagic_1 on
  35. an A4000/040.  It may be faster than c2p/blackmagic_1 on some 68030
  36. systems as well.
  37.  
  38. c2p/akiko_1 is optimised for 68020+akiko, e.g, a CD32.  It is 3 or 4
  39. times faster than c2p/blackmagic_1, but it requires an Akiko chip and
  40. kickstart 3.1.
  41.  
  42. Note: Although my c2p routines are up to several times faster than
  43. c2p/blackmagic_1, the difference may not always be noticeable because
  44. Gloom spends only a fraction its time converting chunky to planar.
  45.  
  46.  
  47. To use these routines in Gloom Deluxe Demo:
  48.  
  49. 1: Copy the files c2p/020_1, c2p/040_1 and c2p/akiko_1 to your Gloom
  50.    Deluxe Demo c2p/ directory.
  51.  
  52. 2: Run Gloom setup from the icon.
  53.  
  54. 3: Select either "Gloom Deluxe" or "Gloom on a Screen".
  55.  
  56. 4: Click on "Select c2p routine" and choose one of 020_1, 040_1 or
  57.    akiko_1.
  58.  
  59. 5: If you selected "Gloom on a Screen", click on "Select ScreenMode"
  60.    and choose a native screenmode, e.g, "PAL LORES".
  61.  
  62. 6: Save the setup and double-click the "playgloom" icon.
  63.  
  64. If the Gloom Deluxe Demo display is strange, flickery or blank, try
  65. "Select ScreenMode" in setup again.  I found that changing the c2p
  66. routine sometimes upsets the ScreenMode option, so select the
  67. ScreenMode -last-.
  68.  
  69. Note: Most of my routines use 32-bit writes to chip memory.  Some
  70. Gloom Deluxe Demo window sizes are not 32-bit aligned, and in those
  71. cases 32-bit chip writes are very inefficient.  For best results,
  72. choose the largest or smallest window size, or one of every second
  73. size inbetween.
  74.  
  75.  
  76. I have also included TimeC2P, a little Shell program for testing and
  77. timing c2p routines.  Use TimeC2P from the Shell as follows:
  78.  
  79. Usage: TimeC2P c2p/c2pfile n
  80.  
  81.   where n=0 to time width 1 AGA
  82.         n=1  "  "    "    1 EHB
  83.         n=2  "  "    "    2 AGA
  84.         n=3  "  "    "    2 EHB
  85.  
  86. Example: TimeC2P c2p/blackmagic_1 1
  87.  
  88.  
  89. You can use TimeC2P to find out which c2p routines are fastest on your
  90. system.  Here are some results from my own testing:
  91.  
  92. 256x180 C2P time in milliseconds:
  93.                             WarpEngine  MMR   CD32+Fast  Chip-CD32  A4000/040
  94. -----------------------------------------------------------------------------
  95. c2p/blackmagic_1 width 1 AGA    na      na      55.5       61.6       27.2
  96. c2p/020_1        width 1 AGA    na      na      54.6       62.0       25.9
  97. c2p/040_1        width 1 AGA    na      na      77.6      175.6       18.6
  98. c2p/akiko_1      width 1 AGA    na      na      17.6       24.2        na
  99.  
  100. c2p/blackmagic_1 width 1 EHB   17.7    27.3     48.7       53.6       21.1
  101. c2p/020_1        width 1 EHB   17.5    23.7     43.3       49.2       19.9
  102. c2p/040_1        width 1 EHB   10.0    39.8     56.0      103.9       14.2
  103. c2p/akiko_1      width 1 EHB    na      na      13.9       19.3        na
  104.  
  105. c2p/blackmagic_1 width 2 AGA    na      na      60.1       62.3       26.3
  106. c2p/020_1        width 2 AGA    na      na      28.5       31.9       14.6
  107. c2p/040_1        width 2 AGA    na      na      31.5       35.0       13.1
  108. c2p/akiko_1      width 2 AGA    na      na      19.0       22.2        na
  109.  
  110. c2p/blackmagic_1 width 2 EHB   17.4    27.7     52.2       54.1       20.0
  111. c2p/020_1        wicth 2 EHB    8.8    19.6     23.2       25.7       10.1
  112. c2p/040_1        width 2 EHB    8.8    17.9     24.6       27.1        9.8
  113. c2p/akiko_1      width 2 EHB    na      na      13.9       16.4        na
  114. -----------------------------------------------------------------------------
  115.  
  116. WarpEngine = A3000 + 40MHz 68040 WarpEngine + 60ns Fastmem
  117. MMR        = A500 + 33MHz 68030 MegaMidgetRacer + 32-bit Fastmem
  118. CD32+Fast  = CD32 + SX-1 + 32-bit Fastmem
  119. Chip-CD32  = CD32 + SX-1, no Fastmem
  120. A4000/040  = A4000 + 25 MHz 68040 + 32-bit Fastmem
  121.  
  122. If you improve any routines, please send me the code.  I would also
  123. appreciate a free copy of any game that uses my routines.
  124.  
  125. Known bug: The width-2 Akiko routines scramble the display when the
  126. window width is not a multiple of 64.  No harm done --- just select
  127. another window size.
  128.  
  129. Disclaimer: These routines work for me.  There is no guarantee.
  130.